#include <iostream>
#include <vector>
#include <sstream>
#include <algorithm>

std::string analyze_words(std::string input_words, int z) {
    std::vector<std::string> words;
    std::istringstream iss(input_words);
    std::string word;

    while (iss >> word) {
        words.push_back(word);
    }

    if (words.size() <= 1) {
        return "Мало данных для анализа";
    }

    int total_words = words.size();
    int uppercase_cyrillic_count = 0;
    int latin_character_count = 0;
    int short_words_count = 0;
    int max_length = 0;
    std::vector<std::string> max_length_words;
    int hyphen_words_count = 0;

    for (const std::string& w : words) {
        if (w.length() <= z) {
            short_words_count++;
        }
        if (std::any_of(w.begin(), w.end(), [](char c){ return isalpha(c) && islower(c); })) {
            latin_character_count++;
        }
        if (isupper(w[0]) && isalpha(w[0])) {
            uppercase_cyrillic_count++;
        }
        if (w.find('-') != std::string::npos) {
            hyphen_words_count++;
        }
        if (w.length() > max_length) {
            max_length = w.length();
            max_length_words = {w};
        } else if (w.length() == max_length) {
            max_length_words.push_back(w);
        }
    }

    return "Количество слов: " + std::to_string(total_words) + "\n"
        + "Количество слов c заглавной кириллической буквы: " + std::to_string(uppercase_cyrillic_count) + "\n"
        + "Количество слов с латинскими символами: " + std::to_string(latin_character_count) + "\n"
        + "Количество коротких слов (<= " + std::to_string(z) + " символов): " + std::to_string(short_words_count) + "\n"
        + "Самое длинное слово: " + ((max_length_words.size() > 0) ? max_length_words[0] : "") + ", длина: " + std::to_string(max_length) + "\n"
        + "Количество слов c символом дефиса '-': " + std::to_string(hyphen_words_count);
}

int main() {
    std::string input_words = "Hello Привет мало-ли кто-то не знает";
    int length_limit = 3;

    std::cout << analyze_words(input_words, length_limit) << std::endl;

    return 0;
}